<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8" />
    <title>2_类式组件</title>
  </head>

  <body>
    <div id="test"></div>

    <script src="../js/react.development.js"></script>
    <script src="../js/react-dom.development.js"></script>
    <!-- Don't use this in production: -->
    <script src="../js/babel.min.js"></script>

    <script type="text/babel">
      // 1.创建类式组件
      class MyComponent extends React.Component {
        render() {
          // render方法放在了哪里？————MyComponent的原型对象上，供实例使用
          // render中的this是谁？————MyComponent的实例对象<=>MyComponent的组件实例对象
          console.log("render中的this：", this)
          return <h2>我是用类定义的组件（适用于【复杂组件】的定义）</h2>
        }
      }

      // 2.渲染组件到页面
      ReactDOM.render(<MyComponent/>, document.getElementById("test"))
      /*
        执行了ReactDOM.render(<MyComponent/>.......之后，发生了什么?
          1.React解析组件标签,找到了MyComponent组件。
          2.发现组件是使用类式定义的，随后new出来该类的实例，并通过该实例调用原型上的render方法。
          3.将render返回的虚拟DON转为真实DOM，随后呈现在页面中。
      */
    </script>
  </body>
</html>